package com.apobates.jforum2.troll.forum.stub.vo;

import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import java.time.LocalDateTime;

/**
 * 某版块的统计信息
 */
public class BoardStatsVo implements Serializable{
    //版块ID
    private long boardId;
    //版块组/卷的ID
    private int boardGroupId;
    //话题数
    private long threads;
    //回复数
    private long replies;
    //收藏数
    private long favorites;
    //最近发布的话题标题
    private String recentTopicTitle;
    //最近发布的话题访问连接
    private String recentTopicLink;
    //最近发布的话题ID
    private long recentTopic;
    //最近发布的话题时间
    @JsonSerialize(using = LocalDateTimeSerializer.class)
    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
    @JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss")
    private LocalDateTime recentTopicDate;
    //最近发布的话题作者ID
    private long recentTopicMember;
    //最近发布的话题作者帐号
    private String recentTopicMemberNickname;
    //今日的主题数
    private long todayTopics;
    //recentTopicDate的格式化字符串
    private String recentTopicDateString;

    public BoardStatsVo() {
    }

    public String getRecentTopicLink() {
        return recentTopicLink;
    }

    public void setRecentTopicLink(String recentTopicLink) {
        this.recentTopicLink = recentTopicLink;
    }

    public long getTodayTopics() {
        return todayTopics;
    }

    public void setTodayTopics(long todayTopics) {
        this.todayTopics = todayTopics;
    }

    public long getBoardId() {
        return boardId;
    }

    public void setBoardId(long boardId) {
        this.boardId = boardId;
    }

    public int getBoardGroupId() {
        return boardGroupId;
    }

    public void setBoardGroupId(int boardGroupId) {
        this.boardGroupId = boardGroupId;
    }

    public long getThreads() {
        return threads;
    }

    public void setThreads(long threads) {
        this.threads = threads;
    }

    public long getReplies() {
        return replies;
    }

    public void setReplies(long replies) {
        this.replies = replies;
    }

    public long getFavorites() {
        return favorites;
    }

    public void setFavorites(long favorites) {
        this.favorites = favorites;
    }

    public String getRecentTopicTitle() {
        return recentTopicTitle;
    }

    public void setRecentTopicTitle(String recentTopicTitle) {
        this.recentTopicTitle = recentTopicTitle;
    }

    public long getRecentTopic() {
        return recentTopic;
    }

    public void setRecentTopic(long recentTopic) {
        this.recentTopic = recentTopic;
    }

    public LocalDateTime getRecentTopicDate() {
        return recentTopicDate;
    }

    public void setRecentTopicDate(LocalDateTime recentTopicDate) {
        this.recentTopicDate = recentTopicDate;
    }

    public long getRecentTopicMember() {
        return recentTopicMember;
    }

    public void setRecentTopicMember(long recentTopicMember) {
        this.recentTopicMember = recentTopicMember;
    }

    public String getRecentTopicMemberNickname() {
        return recentTopicMemberNickname;
    }

    public void setRecentTopicMemberNickname(String recentTopicMemberNickname) {
        this.recentTopicMemberNickname = recentTopicMemberNickname;
    }

    public String getRecentTopicDateString() {
        return recentTopicDateString;
    }

    public void setRecentTopicDateString(String recentTopicDateString) {
        this.recentTopicDateString = recentTopicDateString;
    }
}